package javaCode.chapter11.homework_;

import java.util.Scanner;

/**
 * @author 徐州城
 * @version 1.0
 */
public class Homework01 {
    public static void main(String[] args) {
        /*
        编写应用程序EcmDef.java，接收命令行的两个参数(整数)，计算两数相除。
        计算两个数相除，要求，使用方法 cal(int n1,int n2)
        对数据格式不正确(NumberFormatException)、缺少命令行参数(ArrayIndexOutOfBoundException、除0 经行异常处理。
         */

        try {
            //先验证输入的参数的个数是否为正确 两个参数
            if (!(args.length == 2)){
                throw new ArrayIndexOutOfBoundsException("参数个数不对");
            }

            //先把接收到的参数，转换成整数   可能出现格式异常
            int n1 = Integer.parseInt(args[0]);
            int n2 = Integer.parseInt(args[1]);

            double res = cal(n1,n2);  //改方法可能抛出算术异常
            System.out.println("计算结果=" + res);

        } catch (ArrayIndexOutOfBoundsException e) {
            System.out.println(e.getMessage());
        } catch (NumberFormatException e){
            System.out.println("参数形式不正确，需要输出整数");
        } catch (ArithmeticException e){
            System.out.println("出现了除0的异常");
        }

    }

    public static double cal(int n1,int n2){
        return n1 / n2;
    }
}
